#include "Contact.h"
#include"SeqList.h"
//初始化
void ContactInit(Contact* con) {
    SLInit(con);
}

//销毁
void ContactDestroy(Contact* con) {
    SLDestroy(con);
}

//展示数据
void ContactShow(Contact* con) {
    printf("姓名   性别   年龄   电话   地址\n");
    for(int i=0;i<con->size;i++) {
        printf("%s   %s   %d   %s   %s\n",
            con->arr[i].name,
            con->arr[i].sex,
            con->arr[i].age,
            con->arr[i].tel,
            con->arr[i].addr);
    }
}

//添加数据
void ContactAdd(Contact* con) {
    peoInfo p;
    printf("----------------添加数据--------------\n");
    printf("输入姓名:");
    scanf("%s",p.name);
    printf("输入性别:");
    scanf("%s",p.sex);
    printf("输入年龄:");
    scanf("%d",&p.age);
    printf("输入电话:");
    scanf("%s",p.tel);
    printf("输入地址:");
    scanf("%s",p.addr);

    SLPushBack(con,p);
}

//根据姓名查找
int FindByName(Contact* con,char name[]) {
    for(int i=0;i<con->size;i++) {
        if(strcmp(con->arr[i].name,name)==0) {
            return i;
        }
    }
    return -1;
}

//删除数据
void ContactDel(Contact* con) {
    char name[100];
    printf("输入要删除的人名:");
    scanf("%s",name);
    int find=FindByName(con,name);
    if(find<0) {
        printf("要删除的不存在\n");
        return;
    }
    SLErase(con,find);
    printf("删除成功\n");
}

//修改
void ContactModify(Contact* con) {
    char name[100];
    printf("请输入要修改的信息的人名:");
    scanf("%s",name);

    int find=FindByName(con,name);
    if(find<0) {
        printf("此人不存在\n");
        return;
    }

    printf("姓名修改为:");
    scanf("%s",con->arr[find].name);

    printf("性别修改为:");
    scanf("%s",con->arr[find].sex);

    printf("年龄修改为:");
    scanf("%s",&con->arr[find].age);//注意

    printf("电话修改为:");
    scanf("%s",con->arr[find].tel);

    printf("地址修改为:");
    scanf("%s",con->arr[find].addr);

    printf("成功修改\n");

}